|
In computer science, the occurs check is a part of algorithms for syntactic unification. It causes unification of a variable ''V'' and a structure ''S'' to fail if ''S'' contains ''V''. ==Application in theorem proving== In theorem proving, unification without the occurs check can lead to unsound inference. For example, the Prolog goal will succeed, binding ''X'' to a cyclic structure which has no counterpart in the Herbrand universe. As another example, 〔; here: p.143〕 without occurs-check, a resolution proof can be found for the non-theorem 〔Informally, and taking to mean e.g. "''x loves y''", the formula reads "''If everybody loves somebody, then a single person must exist that is loved by everyone.''"〕 : the negation of that formula has the conjunctive normal form , with and denoting the Skolem function for the first and second existential quantifier, respectively; the literals and are unifiable without occurs check, producing the refuting empty clause. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Occurs check」の詳細全文を読む スポンサード リンク
|